package com.eastfair.notice.dto;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.eastfair.core.base.entity.Entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import lombok.Data;
import lombok.Builder;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;

/**
 * <p>
 * 实体类
 * 消息发送记录
 * </p>
 *
 * @author liuxiaobai
 * @since 2021-08-30
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = false)
@Builder
@ApiModel(value = "MsgLogSaveDTO", description = "消息发送记录")
public class MsgLogSaveDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "")
    private Long projectId;
    @ApiModelProperty(value = "")
    private Long exhibitionId;
    /**
     * 消息类型 sms、email
     */
    @ApiModelProperty(value = "消息类型 sms、email")
    @Size(max = 32, message = "消息类型 sms、email长度不能超过32")
    private String type;
    /**
     * db_imaster_public.c_msg_content.id
     */
    @ApiModelProperty(value = "db_imaster_public.c_msg_content.id")
    private Long tempId;
    /**
     * 接收人类型（展商、员工、观众）
     */
    @ApiModelProperty(value = "接收人类型（展商、员工、观众）")
    @Size(max = 32, message = "接收人类型（展商、员工、观众）长度不能超过32")
    private String receiveType;
    /**
     * 接收人ID
     */
    @ApiModelProperty(value = "接收人ID")
    private Long receiveId;
    /**
     * 接收人email、mobile、imUserId
     */
    @ApiModelProperty(value = "接收人email、mobile、imUserId")
    @Size(max = 255, message = "接收人email、mobile、imUserId长度不能超过255")
    private String receive;
    /**
     * 发送内容
     */
    @ApiModelProperty(value = "发送内容")
    @Size(max = 65535, message = "发送内容长度不能超过65,535")
    private String content;
    /**
     * 是否成功
     */
    @ApiModelProperty(value = "是否成功")
    private Boolean status;
    /**
     * 错误信息
     */
    @ApiModelProperty(value = "错误信息")
    @Size(max = 65535, message = "错误信息长度不能超过65,535")
    private String errMsg;

}
